<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 vector-feature-night-mode-enabled skin-theme-clientpref-os vector-sticky-header-enabled" lang="fr" dir="ltr"><head>
<meta charset="UTF-8">
<title>AppleScript</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://fr.wikipedia.org/wiki/AppleScript"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-AppleScript rootpage-AppleScript skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">AppleScript</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="fr" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="fr" dir="ltr">
<div class="infobox_v3 infobox infobox--frwiki noarchive" style="width:260px">
<div class="entete icon informatique" style="color: #000000;"><style data-mw-deduplicate="TemplateStyles:r228712691">
/* start https://fr.wikipedia.org/ */
.mw-parser-output .entete.informatique{background-image:url("./_mw_/Picto.nfo.png")}
/* end https://fr.wikipedia.org/ */
</style>
<div>AppleScript</div>
</div>
<div class="images">
</div>
<p class="mw-empty-elt">
</p>
<table><caption style="color:#000000;">Informations</caption>
<tbody><tr>
<th scope="row"><a href="D%C3%A9veloppeur" title="Développeur">Développé par</a></th>
<td>
<span class="wd_p178"><a href="Apple" title="Apple">Apple</a></span></td>
</tr>
<tr>
<th scope="row"> <a href="Version_d'un_logiciel" title="Version d'un logiciel">Première version</a>
</th>
<td>
<span class="wd_p571"><time>1993</time></span></td>
</tr>
<tr>
<th scope="row"> <a href="Version_d'un_logiciel" title="Version d'un logiciel">Dernière version</a>
</th>
<td>
2.8 (<time class="nowrap" datetime="2015-06-15" data-sort-value="2015-06-15">15 juin 2015</time>)</td>
</tr>
<tr>
<th scope="row"><a href="Syst%C3%A8me_d'exploitation" title="Système d'exploitation">Système d'exploitation</a></th>
<td>
<span class="wd_p306"><a href="Syst%C3%A8me_7" title="Système 7">Système 7</a>, <a href="Mac_OS_8" title="Mac OS 8">Mac OS 8</a>, <a href="Mac_OS_9" title="Mac OS 9">Mac OS 9</a> et <a href="MacOS" title="MacOS">macOS</a></span></td>
</tr>
<tr>
<th scope="row"><a href="Plateforme_informatique" title="Plateforme informatique">Environnement</a></th>
<td>
<a href="Mac_OS" class="mw-redirect" title="Mac OS">Mac OS</a></td>
</tr>
<tr>
<th scope="row"> Type
</th>
<td>
<a href="Langage_de_script" title="Langage de script">Langage de script</a></td>
</tr>
<tr>
<th scope="row"><a href="Licence_de_logiciel" title="Licence de logiciel">Licence</a></th>
<td>
<a href="Logiciel_propri%C3%A9taire" title="Logiciel propriétaire">propriétaire</a>, Apple <a href="EULA" class="mw-redirect" title="EULA">EULA</a> (certaines parties sous licence <a href="Apple_Public_Source_License" title="Apple Public Source License">APSL</a>)</td>
</tr>
<tr>
<th scope="row"><a href="Site_web" title="Site web">Site web</a></th>
<td>
<a rel="nofollow" class="external text" href="https://www.apple.com/applescript/">www.apple.com</a></td>
</tr>
</tbody></table>
<p class="mw-empty-elt">
</p>
</div>
<p><b>AppleScript</b> est un <a href="Langage_de_script" title="Langage de script">langage de script</a> créé par <a href="Apple" title="Apple">Apple</a>, et intégré à <a href="Mac_OS" class="mw-redirect" title="Mac OS">Mac OS</a>. Il est connu pour posséder une syntaxe riche et élaborée, la plus proche possible d'un pseudo-anglais limité. Plus largement, « AppleScript » est le mot qui désigne l'interface de script de Mac OS, qui est prévu pour fonctionner en parallèle de l'<a href="Environnement_graphique" class="mw-redirect" title="Environnement graphique">environnement graphique</a>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Histoire">Histoire</h2></div>
<p>Le projet AppleScript est issu du projet <a href="HyperCard" title="HyperCard">HyperCard</a>. HyperCard disposait lui aussi d'un langage de script basé sur un pseudo-anglais limité, <a href="HyperTalk" class="mw-redirect" title="HyperTalk">HyperTalk</a> qui permettait de manipuler les données des piles HyperCard. Les ingénieurs d'Apple ont reconnu qu'un langage similaire de script pouvait être utilisé avec toute <a href="Application_(informatique)" title="Application (informatique)">application</a>, et le projet AppleScript est né comme un sous-ensemble du <a href="Syst%C3%A8me_7" title="Système 7">Système 7</a>.
</p><p>La première version fut publiée en <time class="nowrap" datetime="1993-10" data-sort-value="1993-10">octobre 1993</time> avec le Système 7.1.1 (ou Système 7 Pro, première mise à jour majeure du Système 7). <a href="QuarkXPress" title="QuarkXPress">QuarkXPress</a> dans sa version 3.2, fut l'une des premières applications importantes à supporter AppleScript, avec comme conséquence qu'AppleScript fut largement adopté par le secteur de l'édition et des arts graphiques de la clientèle d'Apple. On peut penser que si Apple a gardé une place importante dans le monde de la <a href="Publication_assist%C3%A9e_par_ordinateur" title="Publication assistée par ordinateur">PAO</a> après le portage de Quark (et d'autres applications) sur la plateforme <a href="Microsoft" title="Microsoft">Microsoft</a> <a href="Windows" class="mw-redirect" title="Windows">Windows</a>, c'est, entre autres, parce que les utilisateurs du Mac ont pu automatiser des <a href="Workflow" title="Workflow">tâches</a> complexes ou répétitives (ses problèmes rencontrés sous Windows pour le “flashage", c'est-à-dire le traitement entre <a href="Mise_en_page" title="Mise en page">mise en page</a> et impression ayant aussi joué un rôle déterminant).
</p><p>Le passage vers <a href="Mac_OS_X" class="mw-redirect" title="Mac OS X">Mac OS X</a> et son <a href="Interface_de_programmation" title="Interface de programmation">API</a> <a href="Cocoa_(Apple)" title="Cocoa (Apple)">Cocoa</a> a permis à AppleScript de prendre son indépendance. Le scriptage basique des applications Cocoa demande peu d'effort de la part du développeur. AppleScript Studio, fourni depuis <a href="Mac_OS_X_10.2" class="mw-redirect" title="Mac OS X 10.2">Mac OS X 10.2</a>, permet à l'utilisateur de construire des applications complètes à partir d'AppleScript et les <a href="Objet_(informatique)" title="Objet (informatique)">objets</a> Cocoa. Cependant, depuis la version 3.2 des outils développeurs, AppleScript Studio a été remplacé par AppleScriptObjC et, dans <a href="Interface_Builder" title="Interface Builder">Interface Builder</a>, l'onglet AppleScript a disparu, bien que l'on puisse le remettre en modifiant le fichier Plist. De plus, le lien vers AppleScript sur le site d'Apple renvoie désormais sur Automator (<a rel="nofollow" class="external text" href="https://web.archive.org/web/20090423191657/https://www.apple.com/applescript/">https://web.archive.org/web/20090423191657/https://www.apple.com/applescript/</a>).
</p><p>Pour rétablir l'onglet applescript dans Interface Builder, ouvrez le terminal et entrez ou copiez-collez les lignes suivantes : <i>defaults write com.apple.InterfaceBuilder3 IBEnableAppleScriptStudioSupport -bool YES</i>
</p><p>AppleScript est un composant des technologies d'automatisation de <a href="Mac_OS_X" class="mw-redirect" title="Mac OS X">Mac OS X</a> avec Services et <a href="Automator" title="Automator">Automator</a>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Concept_de_base">Concept de base</h2></div>
<p>AppleScript a été conçu pour offrir aux utilisateurs un mécanisme intelligent de contrôle d'applications, d'informations et de documents et ainsi mettre en œuvre une gestion automatisée des tâches. AppleScript est conçu comme une interface de script pour contrôler divers programmes. Automatiser des tâches avec AppleScript permet de réduire le temps qu'il faut pour accomplir ces tâches ainsi que de réduire les possibilités d'erreurs humaines.
</p><p>Par exemple, un script pourrait ouvrir une photo dans une application d'édition photo, réduire sa résolution, ajouter une bordure, un titre, puis exporter la photo sur Internet et copier l'adresse de la photo dans un <a href="%C3%89diteur_de_texte" title="Éditeur de texte">éditeur de texte</a>, et enfin passer à la photo suivante de la série, et ainsi de suite à travers des centaines ou des milliers de photos, permettant la création d'une galerie photo sur Internet, le script pouvant utiliser un client FTP pour transférer les photos sur le site Web. Pour l'utilisateur, des centaines de mesures dans de multiples applications, utilisant des milliers de documents, ont été réduites à une seule : exécuter un script. Même si l'utilisateur ne devait utiliser un tel script qu'une seule fois, le temps de développement AppleScript peut être totalement exploité : dans la pratique, les scripts sont utilisés encore et encore, permettant un gain de temps considérable qui compense le temps de développement.
</p><p>Un concept majeur de l'AppleScript est que les scripts manipulent les applications d'une manière fondamentalement différente de la façon dont les utilisateurs interagissent avec elles. L'utilisateur utilise l'application grâce à l'interface graphique, en choisissant des options dans les menus et en cliquant sur des boutons, alors que les scripts demandent et définissent les valeurs et les actions invoquées par l'application en mode interne. Ainsi, par exemple, plutôt que de simuler des frappes au clavier pour entrer du texte dans les champs d'une application, le script AppleScript utilise des commandes fixant directement les valeurs des champs souhaités de l'enregistrement, sans même que l'application n'affiche le dossier en cours d'actualisation. AppleScript a également la capacité de contrôler les applications non-scriptables grâce à l'interface graphique utilisateur (GUI) de scripts, ce qui permet au script de sélectionner des éléments du menu, cliquer sur les boutons, entrer du texte dans les champs de texte, et en général contrôler la plupart des interfaces de <a href="Mac_OS_X" class="mw-redirect" title="Mac OS X">Mac OS X</a>.
</p><p><br>
Étant donné que les applications sont toutes différentes les unes des autres, le nombre de commandes standards soutenues par toutes les applications est assez restreint. Chaque application scriptable publie les termes qu'elle comprend, sous la forme d'un dictionnaire d'évènements <a href="Apple" title="Apple">Apple</a> (Apple Event), utilisé par AppleScript pour déterminer la validité des commandes qui peuvent être utilisées dans le contexte de chaque application.
</p>
<div class="mw-heading mw-heading2"><h2 id="Hello_World_!"><span id="Hello_World_.21"></span>Hello World !</h2></div>
<p>Dans AppleScript, le classique programme <a href="Hello_world" title="Hello world">Hello World</a> ! est écrit comme ceci :
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="nb">say</span> <span class="s2">"Hello World!"</span>
</pre></div>
<p>Le résultat du premier script est que votre ordinateur va dire hello world avec la voix par défaut. Afin de changer cette voix, allez dans l’onglet voix des ≪Préférences Système≫. Ou vous pouvez écrire le script comme ceci :
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="nb">say</span> <span class="s2">"Hello World!"</span> <span class="nv">using</span> <span class="s2">"Alex"</span>
</pre></div>
<p>”Alex” est juste un exemple ; il y a beaucoup d’autres voix.
</p>
<div class="mw-heading mw-heading2"><h2 id="AppleScript_dans_Mac_OS_X">AppleScript dans Mac OS X</h2></div>
<p>De nombreuses applications Mac OS X sont scriptables, tant des applications fournies par Apple que celles de tiers. Le <a href="Finder" title="Finder">Finder</a>, <a href="Safari_(logiciel)" class="mw-redirect" title="Safari (logiciel)">Safari</a>, <a href="IPhoto" title="IPhoto">iPhoto</a> et <a href="ITunes" title="ITunes">iTunes</a> d'Apple ; <a href="Adobe_Illustrator" title="Adobe Illustrator">Illustrator</a>, <a href="Adobe_Photoshop" title="Adobe Photoshop">Photoshop</a> et <a href="Adobe_InDesign" title="Adobe InDesign">InDesign</a> d'<a href="Adobe_Systems" class="mw-redirect" title="Adobe Systems">Adobe</a> ; <a href="Microsoft_Word" title="Microsoft Word">Word</a> et <a href="Microsoft_Excel" title="Microsoft Excel">Excel</a> de <a href="Microsoft" title="Microsoft">Microsoft</a> ; <a href="QuarkXPress" title="QuarkXPress">QuarkXPress</a>, pour ne citer que quelques exemples parmi les plus connus.
</p><p>Avant le <a href="Syst%C3%A8me_7" title="Système 7">Système 7</a>, le <a href="Moteur_d'ex%C3%A9cution" class="mw-redirect" title="Moteur d'exécution">moteur d'exécution</a> d'application Mac OS avait une <a href="Programmation_%C3%A9v%C3%A9nementielle" title="Programmation événementielle">programmation événementielle</a> rudimentaire ne pouvant produire qu'un nombre limité d'évènements de bas niveau tel que "touche enfoncée" ou "souris cliquée". Chaque application était responsable du décodage de ces évènements de bas niveau en actions utilisateur significatives de haut niveau telles que "sélectionner l'article Couper du menu Édition". Dans de nombreux cas, le code gérant la lecture de l'évènement et celui gérant son décodage ont été fusionnés. Par exemple, le code gérant le "clic souris" pouvait lui-même le décoder comme "sélectionner l'article Quitter du menu "Fichier", puis quitter l'application immédiatement.
</p><p>L'auteur qui veut rendre scriptable son application par AppleScript doit séparer le décodage et l'exécution des commandes, une tâche qu'Apple référence comme <b><a href="Refactorisation" class="mw-redirect" title="Refactorisation">refactorisation</a></b> (… de l'application). Les développeurs furent encouragés à écrire à deux « piles » complètes de gestion d'évènement. L'une pour gérer les évènements de bas niveau (clics, etc.) l'autre pour les évènements de haut niveau (AppleEvents). […]
</p><p>Dans <a href="Mac_OS_X" class="mw-redirect" title="Mac OS X">Mac OS X</a>, AppleScript est plus simple à mettre en œuvre par les développeurs, particulièrement pour les applications développée en <a href="Cocoa_(Apple)" title="Cocoa (Apple)">Cocoa</a>. Contrairement à Mac OS où les évènements sont traités par les applications, dans Cocoa, les évènements sont décodés en commande de haut niveau par l'objet <code>NSApplication</code>, et les messages adressés directement au bon objet. Chaque application Cocoa est « refactorisée » par défaut, le développeur n'ayant (normalement) plus à écrire le code de gestion des évènements mais seulement les « méthodes » qui seront appelées par ces évènements.
</p><p>Un autre grand avantage est que les objets Cocoa se présentent aux autres applications et même machines, sous un format standardisé que chacun peut étudier directement. Sous Cocoa, AppleScript est plus « mince ». Le moteur de script décode le script, traduit les noms d'objet depuis leur forme compréhensible pour l'humain vers leur format interne, puis appelle directement les méthodes de l'application ciblée.
</p>
<div class="mw-heading mw-heading2"><h2 id="La_métaphore_du_langage_naturel"><span id="La_m.C3.A9taphore_du_langage_naturel"></span>La métaphore du langage naturel</h2></div>
<p>Considérant que les <i>Apple Events</i> sont une méthode d'envoi de messages aux applications, AppleScript est un langage conçu pour envoyer des <i>Apple Events</i>. Fidèle à sa tradition qui veut que Mac OS soit facile d'utilisation, AppleScript est conçu comme une <a href="M%C3%A9taphore" title="Métaphore">métaphore</a> de <a href="Langue_naturelle" class="mw-redirect" title="Langue naturelle">langue naturelle</a>, tout comme l'<a href="Environnement_graphique" class="mw-redirect" title="Environnement graphique">environnement graphique</a> utilisateur est conçu comme une métaphore du <a href="Bureau_(meuble)" title="Bureau (meuble)">bureau</a>. Le langage AppleScript est généralement lisible par tous ceux qui maîtrisent un minimum l'anglais<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> et modifiable par la plupart de ceux-ci. Le langage est largement basé sur HyperTalk, le langage d'HyperCard, étendu pour ne plus se limiter au monde des cartes et piles d'HyperCard, mais pouvant s'adresser à théoriquement n'importe quel document. Pour atteindre cet objectif, l'équipe de développement a présenté l'"AppleScript AppleEvent Object Model" (AEOM), qui spécifie les commandes que chaque application est censée comprendre.
</p><p>Le cœur d'AppleScript est formé de termes qui se présentent comme des noms et verbes qui peuvent être combinés. Par exemple, plutôt que d'avoir un terme pour imprimer une page, un pour imprimer un document ou imprimer une série de pages (imprimerPage, imprimerDocument, imprimerSerie), AppleScript utilise un seul verbe <i>print</i> qui pourra être combiné avec un objet, à savoir une page, un document ou une série de pages.
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="nb">print</span> <span class="nv">page</span> <span class="mi">1</span>
<span class="nb">print</span> <span class="na">document</span> <span class="mi">2</span>
<span class="nb">print</span> <span class="nv">pages</span> <span class="mi">1</span> <span class="nb">thru</span> <span class="mi">5</span> <span class="k">of</span> <span class="na">document</span> <span class="mi">2</span>
</pre></div>
<p>De manière générale, AEOM défini un certain nombre d'objets, tels que "document" ou "paragraphe", et les actions que l'on peut faire à leur égard, tels que "fermer" et "couper". Ce système permet également de se référer aux propriétés des objets. Par exemple, le "troisième paragraphe du document <i>Bonjour</i>", ou la "couleur du dernier mot de la fenêtre courante". AEOM utilise le <i>dictionnaire</i> des applications pour associer les Apple Events au langage AppleScript humainement compréhensible, permettant la traduction réciproque entre AppleScript compréhensible et le <a href="Bytecode" title="Bytecode">bytecode</a> des Apple Events. Pour découvrir quels éléments sont scriptables pour une application donnée, il faut consulter son dictionnaire, accessible via l'article de menu "Ouvrir un dictionnaire" du menu "Fichier" de l'application "Éditeur de scripts".
</p><p>Pour désigner quelle application est visée par le message, AppleScript utilise le verbe <i>tell</i> (dit à) :
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="k">tell</span> <span class="nb">application</span> <span class="s2">"Microsoft Word"</span>
<span class="nb">quit</span>
<span class="k">end</span> <span class="k">tell</span>
</pre></div>
<p>Cette même demande peut s'écrire en une seule ligne en utilisant le verbe à l'infinitif :
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="k">tell</span> <span class="nb">application</span> <span class="s2">"Microsoft Word"</span> <span class="k">to</span> <span class="nb">quit</span>
</pre></div>
<p>Pour les événements de la "Core suite" (activer, ouvrir, rouvrir, fermer, imprimer et quitter), l'application pour être l'<a href="Objet_(informatique)" title="Objet (informatique)">objet</a> indirecte de la demande :
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="nb">quit</span> <span class="nb">application</span> <span class="s2">"Microsoft Word"</span>
</pre></div>
<p>Le concept d'une <a href="Hi%C3%A9rarchie" title="Hiérarchie">hiérarchie</a> d'objets est visible dans ces blocs imbriqués :
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="k">tell</span> <span class="nb">application</span> <span class="s2">"QuarkXPress"</span>
<span class="k">tell</span> <span class="na">document</span> <span class="mi">1</span>
<span class="k">tell</span> <span class="nv">page</span> <span class="mi">2</span>
<span class="k">tell</span> <span class="nb">text</span> <span class="nb">box</span> <span class="mi">1</span>
<span class="k">set</span> <span class="nb">word</span> <span class="mi">5</span> <span class="k">to</span> <span class="s2">"Apple"</span>
<span class="k">end</span> <span class="k">tell</span>
<span class="k">end</span> <span class="k">tell</span>
<span class="k">end</span> <span class="k">tell</span>
<span class="k">end</span> <span class="k">tell</span>
</pre></div>
<p>Le concept de hiérarchie d'objets peut également être exprimé à l'aide de prépositions imbriquées :
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="nv">pixel</span> <span class="mi">7</span> <span class="k">of</span> <span class="nv">row</span> <span class="mi">3</span> <span class="k">of</span> <span class="nv">TIFF</span> <span class="na">image</span> <span class="s2">"my bitmap"</span>
</pre></div>
<p>Hiérarchie qui dans un autre <a href="Langage_de_programmation" title="Langage de programmation">langage de programmation</a> peut s'exprimer par l'appel séquentiel de <a href="Fonction_(informatique)" class="mw-redirect" title="Fonction (informatique)">fonctions</a> :
</p>
<div class="mw-highlight mw-highlight-lang-applescript mw-content-ltr" dir="ltr"><pre><span></span><span class="nv">getTIFF</span><span class="p">(</span><span class="s2">"my bitmap"</span><span class="p">).</span><span class="nv">getRow</span><span class="p">(</span><span class="mi">3</span><span class="p">).</span><span class="nv">getPixel</span><span class="p">(</span><span class="mi">7</span><span class="p">)</span><span class="err">;</span>
</pre></div>
<p>AppleScript comprend les <a href="Adjectif_num%C3%A9ral_ordinal" class="mw-redirect" title="Adjectif numéral ordinal">nombres ordinaux</a> "le premier paragraphe", ainsi que les <a href="Adjectif_num%C3%A9ral_cardinal" class="mw-redirect" title="Adjectif numéral cardinal">cardinaux</a> "paragraphe 5". De même, les chiffres peuvent être mentionnés comme texte ou en nombres, les "cinq", "cinquième" et "5" sont compris. Ils sont appelés « synonymes ». Le mot anglais <i>the</i> peut également être utilisé dans un script afin d'améliorer la lisibilité sans avoir un impact sur la fonctionnalité du script.
</p>
<div class="mw-heading mw-heading2"><h2 id="Outils_de_développement_Applescript"><span id="Outils_de_d.C3.A9veloppement_Applescript"></span>Outils de développement Applescript</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Éditeurs_de_scripts"><span id=".C3.89diteurs_de_scripts"></span>Éditeurs de scripts</h3></div>
<p>Les éditeurs de script procurent un environnement de programmation unifié pour les Applescripts, incluant des outils pour les scripts de composition, validation, compilation, exécution et debuggage. Ils procurent aussi des mécanismes pour ouvrir et consulter les dictionnaires Applescript des applications scriptables, sauvegardant les scripts dans de nombreux formats (fichiers de script compilés, <a href="Progiciel" title="Progiciel">progiciels</a>, et <a href="Fichier_texte" title="Fichier texte">fichiers texte</a>), et mettant habituellement des outils pratiques tels que la <a href="Coloration_syntaxique" title="Coloration syntaxique">coloration syntaxique</a> et l'auto-complétion de code.
</p><p>AppleScript Editor (dont le nom est devenu Script Editor depuis la version 10.6 Snow Leopard de Mac OS X) est l'éditeur AppleScript fourni avec Mac OS X. Les scripts sont écrits dans des fenêtres d'édition où ils peuvent être compilés et exécutés, et ces fenêtres contiennent divers panneaux qui affichent les informations de log, les résultats de l'exécution, et d'autres informations dans un but de <a href="D%C3%A9bogueur" title="Débogueur">débogage</a>. L'accès aux dictionnaires de scripts et aux modules pré-écrits est disponible dans les menus de l'application.
</p><p>L'application "Script Debugger" est un éditeur Applescript commercial, qui peut être testé gratuitement pendant une durée limitée.
</p><p><a href="Xcode" title="Xcode">Xcode</a>, d'Apple est une suite d'outils pour développer des applications ayant des capacités d'édition d'Applescript ou la création d'applications à part entière écrites en AppleScript.
</p><p>Smile et SmileLab, disponibles sur le site de <a rel="nofollow" class="external text" href="http://www.satimage.fr/software/en/index.html">Satimage</a> est un logiciel tiers freeware/commercial. C'est un <a href="Environnement_de_d%C3%A9veloppement_int%C3%A9gr%C3%A9" class="mw-redirect" title="Environnement de développement intégré">IDE</a> pour Applescript, lui-même entièrement écrit en Applescript. Smile est gratuit, et à l'origine conçu pour le développement Applescript. SmileLab est un logiciel commercial avec des extensions supplémentaires pour l'analyse numérique, les graphismes, l'automatisation de la machine et la production web. Smile et SmileLab utilisent un assortiment de fenêtres - fenêtres Applescript pour l'exécution et la sauvegarde de scripts entiers, terminaux AppleScript pour tester le code ligne par ligne, fenêtres <a href="Unicode" title="Unicode">unicode</a> pour travailler avec du texte et du <a href="XML" class="mw-redirect" title="XML">XML</a>. Les utilisateurs peuvent créer des interfaces complètes - appelées dialogues - pour des situations où les dialogues intégrés à AppleScript sont insuffisants.
</p>
<div class="mw-heading mw-heading2"><h2 id="Voir_aussi">Voir aussi</h2></div>
<style data-mw-deduplicate="TemplateStyles:r194021218">
/* start https://fr.wikipedia.org/ */
.mw-parser-output .autres-projets>.titre{text-align:center;margin:0.2em 0}.mw-parser-output .autres-projets>ul{margin:0;padding:0}.mw-parser-output .autres-projets>ul>li{list-style:none;margin:0.2em 0;text-indent:0;padding-left:24px;min-height:20px;text-align:left;display:block}.mw-parser-output .autres-projets>ul>li>a{font-style:italic}@media(max-width:720px){.mw-parser-output .autres-projets{float:none}}
/* end https://fr.wikipedia.org/ */
</style>
<div class="mw-heading mw-heading2"><h2 id="Lien_externe">Lien externe</h2></div>
<p><a rel="nofollow" class="external text" href="http://iscript.tibimac.com/">www.iscript.fr</a>
L'ouvrage de Laurent Sebilleau et Daniel Varlet, <i>Aller plus loin en Applescript</i>, après une introduction rappelant les notions de base de l'informatique, développe les particularités de la programmation Applescript.
</p><p><a rel="nofollow" class="external free" href="http://trad.applescript.free.fr/apl/AplAp.pdf">http://trad.applescript.free.fr/apl/AplAp.pdf</a>
</p><p>Le lien ci-dessous présente une synthèse de la documentation disponible sur le langage.
</p><p><a rel="nofollow" class="external free" href="http://trad.applescript.free.fr/applescript.html">http://trad.applescript.free.fr/applescript.html</a>
</p>
<div class="mw-heading mw-heading2"><h2 id="Notes_et_références"><span id="Notes_et_r.C3.A9f.C3.A9rences"></span>Notes et références</h2></div>
<div class="references-small decimal" style=""><div class="mw-references-wrap"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a> </span><span class="reference-text">Pendant un certain temps, AppleScript supporta plusieurs langues (appelés « dialectes »). Outre l'anglais, il y avait le français et le japonais. À partir de Mac OS 8.5, seul l'anglais fut maintenu.</span>
</li>
</ol></div>
</div>
<p><br>
</p>
<div class="navbox-container" style="clear:both;">
</div>
<ul id="bandeau-portail" class="bandeau-portail"><li><span class="bandeau-portail-element"><span class="bandeau-portail-icone"><span class="noviewer skin-invert-image" typeof="mw:File"></span></span> <span class="bandeau-portail-texte">Portail d’<span class="lang-en" lang="en">Apple</span></span> </span></li> <li><span class="bandeau-portail-element"><span class="bandeau-portail-icone"><span class="noviewer" typeof="mw:File"></span></span> <span class="bandeau-portail-texte">Portail de la programmation informatique</span> </span></li> </ul></div><!--htdig_noindex--><div><div class="zim-footer">
Cet article est issu de <a class="external text" title="Dernière modification le 2025-06-24" href="https://fr.wikipedia.org/wiki/?title=AppleScript&oldid=226752128">Wikipédia</a>. Sauf mention contraire, le texte est disponible sous <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.fr">Creative Commons Attribution-Share Alike 4.0</a>. Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>
</body></html>